package Question06;

import java.math.BigDecimal;
import java.math.RoundingMode;

//题目 3：多态练习
//设计以下类：
//抽象类 Shape，包含抽象方法 calculateArea()（返回浮点型面积）。
//子类 Circle，继承 Shape，包含属性 radius（浮点数），实现 calculateArea()（公式：π * r²，取 π=3.14）。
//子类 Rectangle，继承 Shape，包含属性 width 和 height（浮点数），实现 calculateArea()（公式：width * height）。
//编写一个 printArea 方法，接受 Shape 类型的参数，调用其 calculateArea() 并输出结果。
//思考：如果将 Shape 改为接口，代码需要如何修改？
 class Rectangle implements Shape {
    private double width;
    private double height;
    public Rectangle(double width, double height) {
        this.width = width;
        this.height = height;
    }
    @Override
    public double calculateArea() {
        return new BigDecimal(width*height).setScale(4, RoundingMode.HALF_UP).doubleValue();
    }
}
